#ifndef INCLUDED_Diamond_H
#define INCLUDED_Diamond_H

#include <SGE.h>
using namespace SGE;
#include "Map.h"

class Diamond
{
	

public:
	Diamond();
	~Diamond();

	void Load(const char* filename);
	void Unload();
	void Update(float deltaTime, const Map& map);
	void Render(const SVector2& offset);

	SRect GetBoundingBox() const;
	SCircle GetBoundingCircle() const	{ return SCircle(mPosition, 10.0f); }

	void Kill();
	bool isCollected() const {return mCollected;}
	void Enter();

	// Accessors
	const SVector2& GetPosition() const		{ return mPosition; }

	// Mutators
	void SetPosition(const SVector2& pos)	{ mPosition = pos; }
	
private:
	SGE_Sprite mSprite;
	SVector2 mPosition;
	bool mCollected;
	float mZigZagTimer;
};

#endif // #ifndef INCLUDED_Diamond_H